#ifndef HEADER_H_
#define HEADER_H_
#include <iostream>
#include <cmath>
using namespace std;

inline ostream& operator << (ostream& os, const vector<bool>& vec) {
	for (int i=0; i<vec.size(); i++) {
		os<<vec[i];
	}
	return os;
}

inline int norm (const vector<bool>& vec) {
	int sum=0;
	for (int i=0; i<vec.size(); i++) {
		if(vec[i] == true)
			sum += pow(2,vec.size()-i-1);
	}
	return sum;
}

inline int norm (const vector<bool>& vec, int sh) {
	int sum=0;
	for (int i=0; i<vec.size(); i++) {
		if(vec[i] == true)
			sum += pow(2,vec.size()-i-1+sh);
	}
	return sum;
}


#endif
